Power consumption is a major concern in computing devices and, in particular, in personal computing devices, such as laptops, smartphones, tablets, and ultrabooks, and the like. Further, applications running on the devices increasingly rely on graphics and/or media hardware to accelerate processing. Such applications may be related to productivity, infotainment, web browser, or gaming, or the like. Increased use of graphics and/or media hardware may result in increasing die size and increased power consumption by the graphics device, for example.
To save or better manage power on the graphics device, frequency scaling and/or idle states management may be introduced. The clocks and/or voltages provisioned to the graphics device may be scaled up or down to balance the power and performance requirements and/or part of the graphics circuits may be powered down (e.g., put in a so-called ‘idle state’) to further reduce power consumption. The actual frequency and/or idle state may be dynamically specified by the graphics driver or decided by the graphics device itself based on guidance information provided from the graphics driver. In some examples, to determine the frequency, idle state, or guidance information to be provided to the graphics device, the graphics driver may use a heuristic algorithm. For example, a power manager of the graphics driver may monitor ongoing commands being dispatched from the graphics driver to the graphics device and determine the frequency, idle state, or guidance information to be provided to the graphics device based on the command patterns and the discussed heuristic algorithm.
As power management and graphics performance are important characteristics of a personal computing device, it may be desirable to better manage power in graphics devices.